Analyzers are used as diagnostic and testing tools at various stages of the development, integration and maintenance of electronic computing devices. Typically, an analyzer is designed for use with a particular electrical communication interface protocol, such as ATA, SCSI, Ethernet or Fibre Channel. In a typical use, the analyzer is connected to one or two ports of the communication interface of the computing system being tested to record communication activity on the interface. The communication activity is captured and recorded in a dedicated trace buffer associated with the analyzer, and then analyzed and/or presented to the user for the purpose of diagnosing, testing or maintaining the communication interface.
Analyzers designed for high speed interfaces, such as the Fibre Channel protocol, must overcome significant technical challenges due to the extremely high bandwidth and high data transfer rates that are supported by the Fibre Channel communication interface. Examples of existing Fibre Channel protocol analyzers include the I-Tech IFC-20 Fibre Channel Analyzer™, the Xyratex TP-5-100-PA+ Fibre Channel Protocol Analyzer Plus™, the Ancot FCA-5010 Fibre Channel Analyzer™, the FuturePlus Systems Fibre Channel Bus Analysis Probe™, and the Finisar GT-A Fibre Channel Protocol Analyzer™. In each of these Fibre Channel protocol analyzers, the analyzer is provided with a pair of channels that connect to the input and output ports, respectively, of a single computing device on the interface. These analyzers are equipped with various triggering, filtering and capture mechanisms that are designed to identify, capture and store the data of interest at the particular device to which the analyzer is connected. While it is conventional to refer to an analyzer as being “triggered” in order to capture the data of interest, it should be understood that what the analyzer actually does is continuously store all of the data going by the analyzer, and then the signal to “trigger” the analyzer effectively stops this continuous capture so that the data remaining in the buffer of the analyzer is the data of interest. Once captured, the data can then be analyzed to determine the source of problems in the communication interface for that particular device or to optimize the performance of the communication interface for that particular device.
While existing Fibre Channel analyzers work well at debugging communication protocol problems at the particular device to which the analyzer is connected, they do not work well to track down problems or to optimize the communication interface across multiple computing devices in a large Fibre Channel network. Large Fibre Channel network installations can consist of tens to hundreds of computing devices linked over many miles of communication cables and often located at sites that are physically distant from one another. Because of the existing limitation in current Fibre Channel analyzers of only being able to connect to the input and output ports of a single device, analysis of a problem in a large Fibre Channel network requires the use of multiple analyzers. Unfortunately, there is no convenient way of integrating the data from multiple ones of these analyzers in order to make the analysis and presentation of data about such a problem a simple or straightforward matter.
In the I-Tech IFC-20 Fibre Channel analyzer™, for example, monitoring of more than a single device requires the use of multiple analyzers. All of the analyzers must be independently connected to each of the multiple devices and must be independently programmed for triggering and filtering conditions. In order to allow one analyzer to trigger another analyzer to capture data, a trigger sync out of the first analyzer must be connected to a trigger in of the second analyzer. Although it is possible to arrange multiple analyzers in this manner, it is difficult and time consuming to set up because the analyzers are not designed for any type of coordinated arrangement. Moreover, it has been discovered that the kinds of problems encountered in large complex multi-device Fibre Channel communication networks are very often too complicated for such a simplistic arrangement as having a trigger out sync signal of one analyzer connected to the trigger in sync signal of a second analyzer. For example, in Fibre Channel networks that allow for multiple paths over which data packets may travel between a source and destination, monitoring the actual path that any given data packet may be taking becomes less and less predictable as the complexity of the network interconnections increases.
Once this type of multiple analyzer arrangement in the prior art has been set up and triggered, data from the two analyzers is time correlated by a time stamping arrangement to allow for comparison by a host processor of data captured by the pair of channels in the first analyzer with the data captured by the pair of channels in the second analyzer. The time stamped data is then separately downloaded from each analyzer and the host processor is used to correlate and evaluate the captured data. Examples of the use of time stamping to coordinate multiple communication analyzers for communication interfaces other than a Fibre Channel protocol are shown in U.S. Pat. Nos. 5,535,193 and 5,590,116. U.S. Pat. Nos. 5,276,579 and 5,375,159 describe examples of protocol analyzers for telecommunication data networks that include the ability to remotely operate and coordinate the analyzers. U.S. Pat. No. 5,600,632 describes performance monitoring using synchronized network analyzers in which the data from all of the analyzers is aggregated and sorted chronologically before it is analyzed.
Because all of the existing analyzers for such high-speed communication protocols such as the Fibre Channel protocol have been designed as single devices that can attach to and analyze the communications across a single target device, there has been no need or opportunity for a control arrangement capable of supporting multiple users. The ability to provide a method and system for allocating multiple channels among multiple users for a multi-channel analyzer would be advantageous.